home *** CD-ROM | disk | FTP | other *** search
- $INCLUDE: 'C:\FG\INTRFACE.FOR'
-
- PROGRAM MAIN
-
- INTEGER*1 PIXEL_RUNS(20000)
- INTEGER*2 FILE_SIZE, RUN_COUNT
- INTEGER*2 OLD_MODE, NEW_MODE
- INTEGER*2 FILELENGTH
- INTEGER*2 FG_BESTMODE, FG_GETMODE
-
- NEW_MODE = FG_BESTMODE(320,200,1)
- IF (NEW_MODE .LT. 0 .OR. NEW_MODE .EQ. 12) THEN
- STOP 'This program requires a 320 x 200 color graphics mode.'
- END IF
-
- OLD_MODE = FG_GETMODE()
- CALL FG_SETMODE(NEW_MODE)
-
- OPEN(UNIT=1,STATUS='OLD',FILE='CORAL.SPR',FORM='BINARY',RECL=1)
- FILE_SIZE = FILELENGTH(1)
- READ(1) (PIXEL_RUNS(I),I=1,FILE_SIZE)
- CLOSE(UNIT=1)
- RUN_COUNT = FILE_SIZE / 2
- CALL FG_MOVE(0,199)
- CALL FG_DISPLAY(PIXEL_RUNS,RUN_COUNT,320)
- CALL FG_WAITKEY
-
- OPEN(UNIT=1,STATUS='OLD',FILE='CORAL.PPR',FORM='BINARY',RECL=1)
- FILE_SIZE = FILELENGTH(1)
- READ(1) (PIXEL_RUNS(I),I=1,FILE_SIZE)
- CLOSE(UNIT=1)
- RUN_COUNT = FILE_SIZE / 3 * 2
- CALL FG_ERASE
- CALL FG_DISPLAYP(PIXEL_RUNS,RUN_COUNT,320)
- CALL FG_WAITKEY
-
- CALL FG_SETMODE(OLD_MODE)
- CALL FG_RESET
-
- STOP ' '
- END
-
- INTEGER*2 FUNCTION FILELENGTH(UNIT)
- INTEGER*2 UNIT
-
- INTEGER*1 CH
-
- FILELENGTH = 0
- 10 READ(UNIT,END=99) CH
- FILELENGTH = FILELENGTH + 1
- GO TO 10
-
- 99 REWIND UNIT
- RETURN
- END